home *** CD-ROM | disk | FTP | other *** search
- TITLE 'Modify Library Type-attribute and Text description via QLIMOIR';
- /* ENTRY Parameters */ ;
- DCL SPCPTR P1 PARM /* Library name */ ;
- DCL SPCPTR P2 PARM /* Library attribute */ ;
- DCL SPCPTR P3 PARM /* Library text */ ;
- SPACE;
- DCL DD LIBRARY BAS(P1) CHAR(10) /* Library */ ;
- DCL DD ATTR BAS(P2) CHAR(04) /* Attribute */ ;
- DCL DD TEXT BAS(P3) CHAR(50) /* Text */ ;
- SPACE;
- DCL OL PLIST(P1,P2,P3) PARM EXT /* External parameter list */ ;
- SPACE 2;
- /* Internal constants and variables */ ;
- SPACE;
- DCL SPC WCB BASPCO ;
- DCL PTR SEPT@ DEF(WCB) POS(1) ;
- DCL PTR QTEMP@ DEF(WCB) POS(65) ;
- DCL PTR SEPT(1050) BAS(SEPT@) ;
- SPACE;
- DCL SYSPTR LIB@ ;
- SPACE;
- DCL DD DS CHAR(168) BDRY(16) ;
- DCL SPCPTR RTV@(6) DEF(DS) POS(1) ;
- DCL DD START(6) DEF(DS) POS(97) BIN(4) INIT ;
- DCL DD END(6) DEF(DS) POS(121) BIN(4) INIT ;
- DCL DD LEN(6) DEF(DS) POS(145) BIN(4) INIT(-1,-1,-1,-1,-1,-1) ;
- SPACE;
- DCL DD OPTION CHAR(1) INIT('M') ;
- DCL DD TYPE CHAR(2) INIT(X'0401') ;
- DCL DD HALF1A BIN(2) ;
- SPACE;
- DCL OL OIRLIST(OPTION,LIBRARY,TYPE,LIB@,DS) ARG ;
- SPACE;
- /* Resolve System pointer template */ ;
- DCL DD YYRSPTR1 CHAR(34) ;
- DCL DD YYRSPTR11 CHAR(2) DEF(YYRSPTR1) POS(1) ;
- DCL DD YYRSPTR12 CHAR(30) DEF(YYRSPTR1) POS(3) INIT ;
- DCL DD YYRSPTR13 CHAR(2) DEF(YYRSPTR1) POS(33) ;
- SPACE 2;
- DCL CON *CTX BIN(2) INIT(H'0401') ;
- DCL CON RETRIEVE CHAR(2) INIT(X'0800') /* Authorization */ ;
- SPACE;
- DCL EXCM * IMD BP(.ERROR) CV('CPF') EXCID(H'0000') ;
- EJECT;
- ENTRY *(PLIST) EXT ;
- CPYBLA YYRSPTR11,*CTX /* Find the library */ ;
- CPYBLA YYRSPTR12,LIBRARY ;
- CPYBLA YYRSPTR13,RETRIEVE ;
- RSLVSP LIB@,YYRSPTR1,*,* ;
- SPACE;
- CMPBLA(B) TEXT,'*SAME'/EQ(.ATTR) /* New Text passed? */ ;
- SETSPP RTV@(1),TEXT ;
- CPYNV START(1),1 ;
- CPYNV END(1),50 ;
- .ATTR:
- CMPBLA(B) ATTR,'SAME'/EQ(.MOIR) /* New Type-attr? */ ;
- SETSPP RTV@(5),ATTR ;
- CPYNV START(5),1 ;
- CPYNV END(5),4 ;
- .MOIR:
- CALLX SEPT(374),OIRLIST,* /* CALL QLIMROIR */ ;
- SPACE;
- .ERROR:
- DEACTPG * /* Terminate the program */ ;
- RTX * /* Return to caller */ ;
- PEND ;